#ifndef	VIEW_HPP_
#	define VIEW_HPP_

#	include "PlayerView.hpp"
#	include "MainWin.h"
#	include "StatusBox.hpp"
#	include "ChessboardView.hpp"


class View
{
	public:
		View();
		~View();
		
		void	init();
		void	del();
		void	refresh();
		void	reset();
		
		ChessboardView*		getChessboardView() const;
		PlayerView*			getPlayerView(Chess::Color color) const;
		QGraphicsScene*		getScene();
		MainWin*			getMainWin();
		StatusBox*			getStatusBox() const;
		Piece::Type			askForPawnPromotion();
		
		
	private:
		ChessboardView*		v_chessboard;
		PlayerView*			v_players[Chess::BLACK + 1];
		MainWin				mainwin;
		QGraphicsScene		graphicsscene;
		StatusBox*			statusbox;
};

#endif
